[INFO] fetching crate tetsy-secp256k1 0.7.0...
[INFO] checking tetsy-secp256k1-0.7.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate tetsy-secp256k1 0.7.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate tetsy-secp256k1 0.7.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tetsy-secp256k1 0.7.0
[INFO] finished tweaking crates.io crate tetsy-secp256k1 0.7.0
[INFO] tweaked toml for crates.io crate tetsy-secp256k1 0.7.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 563a704d0ebcda4a268fb59d891137da3286a6a15913dbfc3a54ce9219a738e2
[INFO] running `Command { std: "docker" "start" "-a" "563a704d0ebcda4a268fb59d891137da3286a6a15913dbfc3a54ce9219a738e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "563a704d0ebcda4a268fb59d891137da3286a6a15913dbfc3a54ce9219a738e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "563a704d0ebcda4a268fb59d891137da3286a6a15913dbfc3a54ce9219a738e2", kill_on_drop: false }`
[INFO] [stdout] 563a704d0ebcda4a268fb59d891137da3286a6a15913dbfc3a54ce9219a738e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5e93adfcf247c4d37fcca5e3b20faa985f39e2844b261969f228b1e43bc63787
[INFO] running `Command { std: "docker" "start" "-a" "5e93adfcf247c4d37fcca5e3b20faa985f39e2844b261969f228b1e43bc63787", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]    Compiling tetsy-secp256k1 v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling hex-literal-impl v0.2.3
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr]     Checking hex-literal v0.2.2
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/lib.rs:331:35
[INFO] [stdout]     |
[INFO] [stdout] 331 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/key.rs:436:13
[INFO] [stdout]     |
[INFO] [stdout] 436 |             ((hi as u64) << 32 | lo as u64)
[INFO] [stdout]     |             ^                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 436 -             ((hi as u64) << 32 | lo as u64)
[INFO] [stdout] 436 +             (hi as u64) << 32 | lo as u64
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/lib.rs:331:35
[INFO] [stdout]     |
[INFO] [stdout] 331 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub static secp256k1_nonce_function_rfc6979: NonceFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:33:9
[INFO] [stdout]     |
[INFO] [stdout] 33  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub static secp256k1_nonce_function_default: NonceFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub static secp256k1_ecdh_hash_function_sha256: EcdhHashFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub static secp256k1_ecdh_hash_function_default: EcdhHashFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn secp256k1_context_create(flags: c_uint) -> *mut Context;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn secp256k1_context_clone(cx: *mut Context) -> *mut Context;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn secp256k1_context_destroy(cx: *mut Context);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | /     pub fn secp256k1_context_randomize(cx: *mut Context,
[INFO] [stdout] 138 | |                                        seed32: *const c_uchar)
[INFO] [stdout] 139 | |                                        -> c_int;
[INFO] [stdout]     | |_______________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 | /     pub fn secp256k1_ec_pubkey_parse(cx: *const Context, pk: *mut PublicKey,
[INFO] [stdout] 150 | |                                      input: *const c_uchar, in_len: usize)
[INFO] [stdout] 151 | |                                      -> c_int;
[INFO] [stdout]     | |_____________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 | /     pub fn secp256k1_ec_pubkey_serialize(cx: *const Context, output: *const c_uchar,
[INFO] [stdout] 154 | |                                          out_len: *mut usize, pk: *const PublicKey,
[INFO] [stdout] 155 | |                                          compressed: c_uint)
[INFO] [stdout] 156 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | /     pub fn secp256k1_ecdsa_signature_parse_der(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 160 | |                                                input: *const c_uchar, in_len: usize)
[INFO] [stdout] 161 | |                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     pub fn ecdsa_signature_parse_der_lax(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 164 | |                                          input: *const c_uchar, in_len: usize)
[INFO] [stdout] 165 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | /     pub fn secp256k1_ecdsa_signature_serialize_der(cx: *const Context, output: *const c_uchar,
[INFO] [stdout] 168 | |                                                    out_len: *mut usize, sig: *const Signature)
[INFO] [stdout] 169 | |                                                    -> c_int;
[INFO] [stdout]     | |___________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 | /     pub fn secp256k1_ecdsa_recoverable_signature_parse_compact(cx: *const Context, sig: *mut RecoverableSignature,
[INFO] [stdout] 172 | |                                                                input64: *const c_uchar, recid: c_int)
[INFO] [stdout] 173 | |                                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 | /     pub fn secp256k1_ecdsa_recoverable_signature_serialize_compact(cx: *const Context, output64: *const c_uchar,
[INFO] [stdout] 176 | |                                                                    recid: *mut c_int, sig: *const RecoverableSignature)
[INFO] [stdout] 177 | |                                                                    -> c_int;
[INFO] [stdout]     | |___________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | /     pub fn secp256k1_ecdsa_recoverable_signature_convert(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 180 | |                                                          input: *const RecoverableSignature) 
[INFO] [stdout] 181 | |                                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     pub fn secp256k1_ecdsa_signature_normalize(cx: *const Context, out_sig: *mut Signature,
[INFO] [stdout] 184 | |                                                in_sig: *const Signature)
[INFO] [stdout] 185 | |                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 | /     pub fn secp256k1_ecdsa_verify(cx: *const Context,
[INFO] [stdout] 189 | |                                   sig: *const Signature,
[INFO] [stdout] 190 | |                                   msg32: *const c_uchar,
[INFO] [stdout] 191 | |                                   pk: *const PublicKey)
[INFO] [stdout] 192 | |                                   -> c_int;
[INFO] [stdout]     | |__________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | /     pub fn secp256k1_ecdsa_sign(cx: *const Context,
[INFO] [stdout] 195 | |                                 sig: *mut Signature,
[INFO] [stdout] 196 | |                                 msg32: *const c_uchar,
[INFO] [stdout] 197 | |                                 sk: *const c_uchar,
[INFO] [stdout] 198 | |                                 noncefn: NonceFn,
[INFO] [stdout] 199 | |                                 noncedata: *const c_void)
[INFO] [stdout] 200 | |                                 -> c_int;
[INFO] [stdout]     | |________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 | /     pub fn secp256k1_ecdsa_sign_recoverable(cx: *const Context,
[INFO] [stdout] 203 | |                                             sig: *mut RecoverableSignature,
[INFO] [stdout] 204 | |                                             msg32: *const c_uchar,
[INFO] [stdout] 205 | |                                             sk: *const c_uchar,
[INFO] [stdout] 206 | |                                             noncefn: NonceFn,
[INFO] [stdout] 207 | |                                             noncedata: *const c_void)
[INFO] [stdout] 208 | |                                             -> c_int;
[INFO] [stdout]     | |____________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 | /     pub fn secp256k1_ecdsa_recover(cx: *const Context,
[INFO] [stdout] 211 | |                                    pk: *mut PublicKey,
[INFO] [stdout] 212 | |                                    sig: *const RecoverableSignature,
[INFO] [stdout] 213 | |                                    msg32: *const c_uchar)
[INFO] [stdout] 214 | |                                    -> c_int;
[INFO] [stdout]     | |___________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | /     pub fn secp256k1_ec_seckey_verify(cx: *const Context,
[INFO] [stdout] 218 | |                                       sk: *const c_uchar) -> c_int;
[INFO] [stdout]     | |__________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | /     pub fn secp256k1_ec_pubkey_create(cx: *const Context, pk: *mut PublicKey,
[INFO] [stdout] 221 | |                                       sk: *const c_uchar) -> c_int;
[INFO] [stdout]     | |__________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 226 | /     pub fn secp256k1_ec_privkey_tweak_add(cx: *const Context,
[INFO] [stdout] 227 | |                                           sk: *mut c_uchar,
[INFO] [stdout] 228 | |                                           tweak: *const c_uchar)
[INFO] [stdout] 229 | |                                           -> c_int;
[INFO] [stdout]     | |__________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:231:5
[INFO] [stdout]     |
[INFO] [stdout] 231 | /     pub fn secp256k1_ec_pubkey_tweak_add(cx: *const Context,
[INFO] [stdout] 232 | |                                          pk: *mut PublicKey,
[INFO] [stdout] 233 | |                                          tweak: *const c_uchar)
[INFO] [stdout] 234 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 | /     pub fn secp256k1_ec_privkey_tweak_mul(cx: *const Context,
[INFO] [stdout] 237 | |                                           sk: *mut c_uchar,
[INFO] [stdout] 238 | |                                           tweak: *const c_uchar)
[INFO] [stdout] 239 | |                                           -> c_int;
[INFO] [stdout]     | |__________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 | /     pub fn secp256k1_ec_pubkey_tweak_mul(cx: *const Context,
[INFO] [stdout] 242 | |                                          pk: *mut PublicKey,
[INFO] [stdout] 243 | |                                          tweak: *const c_uchar)
[INFO] [stdout] 244 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:246:5
[INFO] [stdout]     |
[INFO] [stdout] 246 | /     pub fn secp256k1_ec_pubkey_combine(cx: *const Context,
[INFO] [stdout] 247 | |                                        out: *mut PublicKey,
[INFO] [stdout] 248 | |                                        ins: *const *const PublicKey,
[INFO] [stdout] 249 | |                                        n: c_int)
[INFO] [stdout] 250 | |                                        -> c_int;
[INFO] [stdout]     | |_______________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 | /     pub fn secp256k1_ecdh(cx: *const Context,
[INFO] [stdout] 253 | |                           out: *mut SharedSecret,
[INFO] [stdout] 254 | |                           point: *const PublicKey,
[INFO] [stdout] 255 | |                           scalar: *const c_uchar,
[INFO] [stdout] 256 | |                           hash_fn: EcdhHashFn,
[INFO] [stdout] 257 | |                           data: *mut c_void)
[INFO] [stdout] 258 | |                           -> c_int;
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 | /     pub fn secp256k1_ecdh_raw(cx: *const Context,
[INFO] [stdout] 261 | |                               out: *mut SharedSecret,
[INFO] [stdout] 262 | |                               point: *const PublicKey,
[INFO] [stdout] 263 | |                               scalar: *const c_uchar)
[INFO] [stdout] 264 | |                               -> c_int;
[INFO] [stdout]     | |______________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 | /     pub fn secp256k1_ec_privkey_inverse(cx: *const Context,
[INFO] [stdout] 267 | |                           out: *mut c_uchar,
[INFO] [stdout] 268 | |                           scalar: *const c_uchar)
[INFO] [stdout] 269 | |                           -> c_int;
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.09s
[INFO] running `Command { std: "docker" "inspect" "5e93adfcf247c4d37fcca5e3b20faa985f39e2844b261969f228b1e43bc63787", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e93adfcf247c4d37fcca5e3b20faa985f39e2844b261969f228b1e43bc63787", kill_on_drop: false }`
[INFO] [stdout] 5e93adfcf247c4d37fcca5e3b20faa985f39e2844b261969f228b1e43bc63787
[INFO] checking tetsy-secp256k1-0.7.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate tetsy-secp256k1 0.7.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate tetsy-secp256k1 0.7.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tetsy-secp256k1 0.7.0
[INFO] finished tweaking crates.io crate tetsy-secp256k1 0.7.0
[INFO] tweaked toml for crates.io crate tetsy-secp256k1 0.7.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 539c5f8048bbc4c55804230a035781cb9fe5500f42939ed632eb0ae2043d51b3
[INFO] running `Command { std: "docker" "start" "-a" "539c5f8048bbc4c55804230a035781cb9fe5500f42939ed632eb0ae2043d51b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "539c5f8048bbc4c55804230a035781cb9fe5500f42939ed632eb0ae2043d51b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "539c5f8048bbc4c55804230a035781cb9fe5500f42939ed632eb0ae2043d51b3", kill_on_drop: false }`
[INFO] [stdout] 539c5f8048bbc4c55804230a035781cb9fe5500f42939ed632eb0ae2043d51b3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b38e5736354c60011fbfbbc0905e64eee6eeb82e3f23a1d341523f886e8a2267
[INFO] running `Command { std: "docker" "start" "-a" "b38e5736354c60011fbfbbc0905e64eee6eeb82e3f23a1d341523f886e8a2267", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]    Compiling tetsy-secp256k1 v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling hex-literal-impl v0.2.3
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr]     Checking hex-literal v0.2.2
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ecdh.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |         &self.0[index.start..]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/lib.rs:267:17
[INFO] [stdout]     |
[INFO] [stdout] 267 |         &self.0[index.start..]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/lib.rs:331:35
[INFO] [stdout]     |
[INFO] [stdout] 331 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ecdh.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |         &self.0[index.start..]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/key.rs:436:13
[INFO] [stdout]     |
[INFO] [stdout] 436 |             ((hi as u64) << 32 | lo as u64)
[INFO] [stdout]     |             ^                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 436 -             ((hi as u64) << 32 | lo as u64)
[INFO] [stdout] 436 +             (hi as u64) << 32 | lo as u64
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/key.rs:517:22
[INFO] [stdout]     |
[INFO] [stdout] 517 |         let count = (0..COUNT).map(|_| {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/lib.rs:267:17
[INFO] [stdout]     |
[INFO] [stdout] 267 |         &self.0[index.start..]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lib.rs:654:18
[INFO] [stdout]     |
[INFO] [stdout] 654 |         for _ in 0..100 {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lib.rs:691:18
[INFO] [stdout]     |
[INFO] [stdout] 691 |         for _ in 0..100 {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/lib.rs:331:35
[INFO] [stdout]     |
[INFO] [stdout] 331 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/lib.rs:253:17
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl ops::Index<ops::Range<usize>> for Signature {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/lib.rs:257:28
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn index(&self, index: ops::Range<usize>) -> &[u8] {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/lib.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 | impl ops::Index<ops::RangeFrom<usize>> for Signature {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/lib.rs:266:28
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn index(&self, index: ops::RangeFrom<usize>) -> &[u8] {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/macros.rs:72:32
[INFO] [stdout]     |
[INFO] [stdout] 72  |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl_array_newtype!(Message, u8, constants::MESSAGE_SIZE);
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/macros.rs:76:36
[INFO] [stdout]     |
[INFO] [stdout] 76  |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl_array_newtype!(Message, u8, constants::MESSAGE_SIZE);
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/macros.rs:92:32
[INFO] [stdout]     |
[INFO] [stdout] 92  |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl_array_newtype!(Message, u8, constants::MESSAGE_SIZE);
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/macros.rs:96:36
[INFO] [stdout]     |
[INFO] [stdout] 96  |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:282:1
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl_array_newtype!(Message, u8, constants::MESSAGE_SIZE);
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/ecdh.rs:83:17
[INFO] [stdout]    |
[INFO] [stdout] 83 | impl ops::Index<ops::Range<usize>> for SharedSecret {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/ecdh.rs:87:28
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn index(&self, index: ops::Range<usize>) -> &[u8] {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]   --> src/ecdh.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 | impl ops::Index<ops::RangeFrom<usize>> for SharedSecret {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]   --> src/ecdh.rs:96:28
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn index(&self, index: ops::RangeFrom<usize>) -> &[u8] {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/macros.rs:72:32
[INFO] [stdout]    |
[INFO] [stdout] 72 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl_array_newtype!(PublicKey, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/macros.rs:76:36
[INFO] [stdout]    |
[INFO] [stdout] 76 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl_array_newtype!(PublicKey, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]   --> src/macros.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl_array_newtype!(PublicKey, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]   --> src/macros.rs:96:36
[INFO] [stdout]    |
[INFO] [stdout] 96 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl_array_newtype!(PublicKey, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/macros.rs:72:32
[INFO] [stdout]    |
[INFO] [stdout] 72 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:91:1
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl_array_newtype!(Signature, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/macros.rs:76:36
[INFO] [stdout]    |
[INFO] [stdout] 76 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:91:1
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl_array_newtype!(Signature, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]   --> src/macros.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:91:1
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl_array_newtype!(Signature, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]   --> src/macros.rs:96:36
[INFO] [stdout]    |
[INFO] [stdout] 96 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:91:1
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl_array_newtype!(Signature, c_uchar, 64);
[INFO] [stdout]    | ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/macros.rs:72:32
[INFO] [stdout]    |
[INFO] [stdout] 72 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl_array_newtype!(RecoverableSignature, c_uchar, 65);
[INFO] [stdout]    | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/macros.rs:76:36
[INFO] [stdout]    |
[INFO] [stdout] 76 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl_array_newtype!(RecoverableSignature, c_uchar, 65);
[INFO] [stdout]    | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]   --> src/macros.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl_array_newtype!(RecoverableSignature, c_uchar, 65);
[INFO] [stdout]    | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]   --> src/macros.rs:96:36
[INFO] [stdout]    |
[INFO] [stdout] 96 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ffi.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl_array_newtype!(RecoverableSignature, c_uchar, 65);
[INFO] [stdout]    | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/macros.rs:72:32
[INFO] [stdout]     |
[INFO] [stdout] 72  |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ffi.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl_array_newtype!(SharedSecret, c_uchar, 32);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/macros.rs:76:36
[INFO] [stdout]     |
[INFO] [stdout] 76  |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ffi.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl_array_newtype!(SharedSecret, c_uchar, 32);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]    --> src/macros.rs:92:32
[INFO] [stdout]     |
[INFO] [stdout] 92  |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ffi.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl_array_newtype!(SharedSecret, c_uchar, 32);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]    --> src/macros.rs:96:36
[INFO] [stdout]     |
[INFO] [stdout] 96  |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ffi.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl_array_newtype!(SharedSecret, c_uchar, 32);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub static secp256k1_nonce_function_rfc6979: NonceFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:33:9
[INFO] [stdout]     |
[INFO] [stdout] 33  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub static secp256k1_nonce_function_default: NonceFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub static secp256k1_ecdh_hash_function_sha256: EcdhHashFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a static
[INFO] [stdout]    --> src/ffi.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub static secp256k1_ecdh_hash_function_default: EcdhHashFn;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn secp256k1_context_create(flags: c_uint) -> *mut Context;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn secp256k1_context_clone(cx: *mut Context) -> *mut Context;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn secp256k1_context_destroy(cx: *mut Context);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | /     pub fn secp256k1_context_randomize(cx: *mut Context,
[INFO] [stdout] 138 | |                                        seed32: *const c_uchar)
[INFO] [stdout] 139 | |                                        -> c_int;
[INFO] [stdout]     | |_______________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 149 | /     pub fn secp256k1_ec_pubkey_parse(cx: *const Context, pk: *mut PublicKey,
[INFO] [stdout] 150 | |                                      input: *const c_uchar, in_len: usize)
[INFO] [stdout] 151 | |                                      -> c_int;
[INFO] [stdout]     | |_____________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 | /     pub fn secp256k1_ec_pubkey_serialize(cx: *const Context, output: *const c_uchar,
[INFO] [stdout] 154 | |                                          out_len: *mut usize, pk: *const PublicKey,
[INFO] [stdout] 155 | |                                          compressed: c_uint)
[INFO] [stdout] 156 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | /     pub fn secp256k1_ecdsa_signature_parse_der(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 160 | |                                                input: *const c_uchar, in_len: usize)
[INFO] [stdout] 161 | |                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     pub fn ecdsa_signature_parse_der_lax(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 164 | |                                          input: *const c_uchar, in_len: usize)
[INFO] [stdout] 165 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | /     pub fn secp256k1_ecdsa_signature_serialize_der(cx: *const Context, output: *const c_uchar,
[INFO] [stdout] 168 | |                                                    out_len: *mut usize, sig: *const Signature)
[INFO] [stdout] 169 | |                                                    -> c_int;
[INFO] [stdout]     | |___________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 | /     pub fn secp256k1_ecdsa_recoverable_signature_parse_compact(cx: *const Context, sig: *mut RecoverableSignature,
[INFO] [stdout] 172 | |                                                                input64: *const c_uchar, recid: c_int)
[INFO] [stdout] 173 | |                                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 175 | /     pub fn secp256k1_ecdsa_recoverable_signature_serialize_compact(cx: *const Context, output64: *const c_uchar,
[INFO] [stdout] 176 | |                                                                    recid: *mut c_int, sig: *const RecoverableSignature)
[INFO] [stdout] 177 | |                                                                    -> c_int;
[INFO] [stdout]     | |___________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | /     pub fn secp256k1_ecdsa_recoverable_signature_convert(cx: *const Context, sig: *mut Signature,
[INFO] [stdout] 180 | |                                                          input: *const RecoverableSignature) 
[INFO] [stdout] 181 | |                                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     pub fn secp256k1_ecdsa_signature_normalize(cx: *const Context, out_sig: *mut Signature,
[INFO] [stdout] 184 | |                                                in_sig: *const Signature)
[INFO] [stdout] 185 | |                                                -> c_int;
[INFO] [stdout]     | |_______________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 | /     pub fn secp256k1_ecdsa_verify(cx: *const Context,
[INFO] [stdout] 189 | |                                   sig: *const Signature,
[INFO] [stdout] 190 | |                                   msg32: *const c_uchar,
[INFO] [stdout] 191 | |                                   pk: *const PublicKey)
[INFO] [stdout] 192 | |                                   -> c_int;
[INFO] [stdout]     | |__________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | /     pub fn secp256k1_ecdsa_sign(cx: *const Context,
[INFO] [stdout] 195 | |                                 sig: *mut Signature,
[INFO] [stdout] 196 | |                                 msg32: *const c_uchar,
[INFO] [stdout] 197 | |                                 sk: *const c_uchar,
[INFO] [stdout] 198 | |                                 noncefn: NonceFn,
[INFO] [stdout] 199 | |                                 noncedata: *const c_void)
[INFO] [stdout] 200 | |                                 -> c_int;
[INFO] [stdout]     | |________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 | /     pub fn secp256k1_ecdsa_sign_recoverable(cx: *const Context,
[INFO] [stdout] 203 | |                                             sig: *mut RecoverableSignature,
[INFO] [stdout] 204 | |                                             msg32: *const c_uchar,
[INFO] [stdout] 205 | |                                             sk: *const c_uchar,
[INFO] [stdout] 206 | |                                             noncefn: NonceFn,
[INFO] [stdout] 207 | |                                             noncedata: *const c_void)
[INFO] [stdout] 208 | |                                             -> c_int;
[INFO] [stdout]     | |____________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 | /     pub fn secp256k1_ecdsa_recover(cx: *const Context,
[INFO] [stdout] 211 | |                                    pk: *mut PublicKey,
[INFO] [stdout] 212 | |                                    sig: *const RecoverableSignature,
[INFO] [stdout] 213 | |                                    msg32: *const c_uchar)
[INFO] [stdout] 214 | |                                    -> c_int;
[INFO] [stdout]     | |___________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | /     pub fn secp256k1_ec_seckey_verify(cx: *const Context,
[INFO] [stdout] 218 | |                                       sk: *const c_uchar) -> c_int;
[INFO] [stdout]     | |__________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | /     pub fn secp256k1_ec_pubkey_create(cx: *const Context, pk: *mut PublicKey,
[INFO] [stdout] 221 | |                                       sk: *const c_uchar) -> c_int;
[INFO] [stdout]     | |__________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 226 | /     pub fn secp256k1_ec_privkey_tweak_add(cx: *const Context,
[INFO] [stdout] 227 | |                                           sk: *mut c_uchar,
[INFO] [stdout] 228 | |                                           tweak: *const c_uchar)
[INFO] [stdout] 229 | |                                           -> c_int;
[INFO] [stdout]     | |__________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:231:5
[INFO] [stdout]     |
[INFO] [stdout] 231 | /     pub fn secp256k1_ec_pubkey_tweak_add(cx: *const Context,
[INFO] [stdout] 232 | |                                          pk: *mut PublicKey,
[INFO] [stdout] 233 | |                                          tweak: *const c_uchar)
[INFO] [stdout] 234 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 | /     pub fn secp256k1_ec_privkey_tweak_mul(cx: *const Context,
[INFO] [stdout] 237 | |                                           sk: *mut c_uchar,
[INFO] [stdout] 238 | |                                           tweak: *const c_uchar)
[INFO] [stdout] 239 | |                                           -> c_int;
[INFO] [stdout]     | |__________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 | /     pub fn secp256k1_ec_pubkey_tweak_mul(cx: *const Context,
[INFO] [stdout] 242 | |                                          pk: *mut PublicKey,
[INFO] [stdout] 243 | |                                          tweak: *const c_uchar)
[INFO] [stdout] 244 | |                                          -> c_int;
[INFO] [stdout]     | |_________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:246:5
[INFO] [stdout]     |
[INFO] [stdout] 246 | /     pub fn secp256k1_ec_pubkey_combine(cx: *const Context,
[INFO] [stdout] 247 | |                                        out: *mut PublicKey,
[INFO] [stdout] 248 | |                                        ins: *const *const PublicKey,
[INFO] [stdout] 249 | |                                        n: c_int)
[INFO] [stdout] 250 | |                                        -> c_int;
[INFO] [stdout]     | |_______________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 | /     pub fn secp256k1_ecdh(cx: *const Context,
[INFO] [stdout] 253 | |                           out: *mut SharedSecret,
[INFO] [stdout] 254 | |                           point: *const PublicKey,
[INFO] [stdout] 255 | |                           scalar: *const c_uchar,
[INFO] [stdout] 256 | |                           hash_fn: EcdhHashFn,
[INFO] [stdout] 257 | |                           data: *mut c_void)
[INFO] [stdout] 258 | |                           -> c_int;
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 | /     pub fn secp256k1_ecdh_raw(cx: *const Context,
[INFO] [stdout] 261 | |                               out: *mut SharedSecret,
[INFO] [stdout] 262 | |                               point: *const PublicKey,
[INFO] [stdout] 263 | |                               scalar: *const c_uchar)
[INFO] [stdout] 264 | |                               -> c_int;
[INFO] [stdout]     | |______________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/ffi.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 | /     pub fn secp256k1_ec_privkey_inverse(cx: *const Context,
[INFO] [stdout] 267 | |                           out: *mut c_uchar,
[INFO] [stdout] 268 | |                           scalar: *const c_uchar)
[INFO] [stdout] 269 | |                           -> c_int;
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/macros.rs:72:32
[INFO] [stdout]    |
[INFO] [stdout] 72 |         impl ::std::ops::Index<::std::ops::Range<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/key.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl_array_newtype!(SecretKey, u8, constants::SECRET_KEY_SIZE);
[INFO] [stdout]    | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/macros.rs:76:36
[INFO] [stdout]    |
[INFO] [stdout] 76 |             fn index(&self, index: ::std::ops::Range<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/key.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl_array_newtype!(SecretKey, u8, constants::SECRET_KEY_SIZE);
[INFO] [stdout]    | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `RangeFrom` type
[INFO] [stdout]   --> src/macros.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         impl ::std::ops::Index<::std::ops::RangeFrom<usize>> for $thing {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/key.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl_array_newtype!(SecretKey, u8, constants::SECRET_KEY_SIZE);
[INFO] [stdout]    | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeFrom` type in public function
[INFO] [stdout]   --> src/macros.rs:96:36
[INFO] [stdout]    |
[INFO] [stdout] 96 |             fn index(&self, index: ::std::ops::RangeFrom<usize>) -> &[$ty] {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/key.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl_array_newtype!(SecretKey, u8, constants::SECRET_KEY_SIZE);
[INFO] [stdout]    | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `impl_array_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 32 previous errors; 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] The following warnings were emitted during compilation:
[INFO] [stderr] 
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] warning: tetsy-secp256k1@0.7.0: Compiler version doesn't include clang or GCC: "cc" "--version"
[INFO] [stderr] 
[INFO] [stderr] error: could not compile `tetsy-secp256k1` (lib) due to 33 previous errors; 34 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b38e5736354c60011fbfbbc0905e64eee6eeb82e3f23a1d341523f886e8a2267", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b38e5736354c60011fbfbbc0905e64eee6eeb82e3f23a1d341523f886e8a2267", kill_on_drop: false }`
[INFO] [stdout] b38e5736354c60011fbfbbc0905e64eee6eeb82e3f23a1d341523f886e8a2267
